import type { Request, Response } from 'express';
import { uniqueId, random } from 'lodash';

// mock data

export default {
    'GET /mockApi/fake_knowledge_relevance': (_: Request, res: Response) => {
        return res.json({
            success: true,
            data: Array(4)
                .fill({
                    knowledge: {
                        title: '利用改进的归一化差异水体指数（MNDWI）提取水体信息的研究',
                        content:
                            'GF-1卫星多光谱数据含有4个波段，分别是蓝光波段（0.45—0.52μm）、绿光波段（0.52—0.59μm）、红光波段（0.63—0.69μm）和反射红外波段（0.77—0.89μm）。为了分析海面辐亮度油水反差，我们做出了溢油区域油膜和海水沿横切线（图1中右图中横线）的辐亮度曲线。分析4个波段的辐亮度曲线，不难看出，1波段和2波段的油水反差最为明显，都表现为油膜的辐亮度值低于海水的辐亮度值，图像中油膜呈现暗色，但是，2波段较1波段而言，油水在曲线上表现的分离度更好；3波段油水反差不明显，油膜与海水混在一起，难以区分，但是，图像中油膜总体呈现暗色；4波段是反射红外波段，与前3个波段不同，溢油区域的辐亮度值高于海水辐亮度值，图像中油膜呈现亮色，陈辉等人在研究MODIS多光谱信息在海上溢油检测中的应用中已经证实，白天在太阳光照的条件下，油膜会吸收太阳光能使油膜区在热红外波段的亮温比背景海水要高，同样在反射红外波段也有类似规律，我们可以基于此特性确定溢油区域。本文利用反射红外在溢油区域辐亮度高于周边海水辐亮度的优势，结合数学图像形态学，做出溢油区域的掩膜图像，再利用其他波段油水反差原理，提出一个针对GF-1卫星多光谱数据的海面油膜提取方法流程。',
                        author: '我 与 江鑫, 何心悦, 王大山, 邹俊宇, 曾振中 等6人',
                    },
                })
                .map((item: any) => ({
                    ...item,
                    id: uniqueId(),
                    relevanceType: ['子集', '父级', '同类参考', '普通引用'][random(0, 3)],
                })),
        });
    },
    'GET /mockApi/fake_knowledge_attachment': (_: Request, res: Response) => {
        return res.json({
            data: [
                {
                    id: '1',
                    title: '地表植被覆盖变化研究课题申请书',
                    type: '申请书',
                    fileType: 'Microsoft-Excel',
                },
                {
                    id: '2',
                    title: '地表植被覆盖变化研究课题申请书',
                    type: '源代码',
                    fileType: 'pdf1',
                },
                {
                    id: '3',
                    title: '地表植被覆盖变化研究课题申请书',
                    type: '申请书',
                    fileType: 'WORD',
                },
                {
                    id: '4',
                    title: '地表植被覆盖变化研究课题申请书',
                    type: '演示视频',
                    fileType: 'mp4-1',
                },
                {
                    id: '5',
                    title: '地表植被覆盖变化研究课题申请书',
                    type: '原理图',
                    fileType: 'PPT',
                },
            ],
        });
    },
    'GET /mockApi/fake_knowledge_quote': (_: Request, res: Response) => {
        return res.json({
            data: [
                {
                    id: '1',
                    quoteType: 'reference_type_book',
                    title: '中国专利公布公告.国家知识产权局.',
                    address: 'http://www.baidu.com',
                    webStationName: '知网',
                    publishDt: '2021-07-16',
                },
                {
                    id: '2',
                    quoteType: 'reference_type_book',
                    title: '中国专利公布公告.国家知识产权局.',
                    address: 'http://www.baidu.com',
                    webStationName: '知网',
                    publishDt: '2021-07-16',
                },
                {
                    id: '3',
                    quoteType: 'reference_type_network_information',
                    publishName: 'Since',
                    name: '这是一本著名资料书籍',
                    author: '张老师',
                    publishDt: '2021-07-16',
                    pageNum: 34,
                },
                {
                    id: '4',
                    quoteType: 'reference_type_network_information',
                    title: '中国专利公布公告.国家知识产权局.',
                    address: 'http://www.baidu.com',
                    webStationName: '知网',
                    publishDt: '2021-07-16',
                },
            ],
        });
    },
    'GET /mockApi/fake_knowledge': (_: Request, res: Response) => {
        return res.json({
            success: true,
            data: Array(5)
                .fill({
                    title: '利用改进的归一化差异水体指数（MNDWI）提取水体信息的研究',
                    author: '我 与 江鑫, 何心悦, 王大山, 邹俊宇, 曾振中 等6人',
                })
                .map((item: any) => ({
                    ...item,
                    id: uniqueId(),
                })),
            total: 5,
        });
    },
};
